Interactive exercise machine data architecture

ABSTRACT

An interactive exercise system includes an exercise machine having a display able to present videos, a three-dimensional camera system, and local processing system able to provide pose estimation based on data from the three-dimensional camera system. The system also includes a communication module for connection to a cloud processing system, with the cloud processing system supporting exercise related analytics including those based on pose estimation provided by the local processing system.

RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application Ser. No. 62/715,591 filed Aug. 7, 2018 and U.S. Provisional Application Ser. No. 62/740,184 filed Oct. 2, 2018, which are hereby incorporated herein by reference in their entirety for all purposes.

TECHNICAL FIELD

The present disclosure relates to an interactive exercise machine. One embodiment of a system architecture can support local and cloud base processing of exercise related data is described.

BACKGROUND

Exercise machines that include handgrips connected by cables to weights or resistant loads are widely used. Such machines allow for various training exercises by a user and can be configured to present a range of adjustable force profiles based on capabilities, goals, and specific training methods desired by a user. Improved exercise machines that include software analytics using both local and cloud based processing are needed to support implementation of such advanced force profile and exercise related data analysis.

SUMMARY

In one embodiment, an interactive exercise system includes an exercise machine having a display able to present videos, a three-dimensional camera system, and local processing system able to provide pose estimation based on data from the three-dimensional camera system. The system also includes a communication module for connection to a cloud processing system, with the cloud processing system supporting exercise related analytics including those based on pose estimation provided by the local processing system.

In another embodiment, an interactive exercise system includes a cloud processing system supporting exercise related analytics including those based on pose estimation. The system also includes a communication module for connection to a local processing system associated with an exercise machine having a display able to present videos, a three-dimensional camera system, and local processing system able to provide pose estimation based on data from the three-dimensional camera system.

In one embodiment, an interactive exercise system includes a mechanical support system and a display module held by the mechanical support system. A force-controlled motor is attached to the mechanical support system and a reel is driven by the force-controlled motor. The interactive exercise system also has a handle graspable by a user and includes a cord extending between the reel and the handle, force applied through the force-controlled motor is based at least in part on detected user force input. In some embodiments the force-controlled component further comprises a force-controlled motor connected to a reel supporting a cord pullable by a user. A movable arm at least partially surrounding a cord connected to a reel and a force-controlled motor can also be provided.

In some embodiments detected force input is determined with a force sensor interacting with the cord. Force input can also be determined with a sensor/pulley assembly that additional provides cord redirection.

In one embodiment the movable arm can have a multi-axis arm hinge assembly. In some embodiments the movable arm rotatably supports the handle graspable by the user.

In one embodiment at least one movable arm is connected to the mechanical support system, with the movable arm having a rotational arm mechanism for pivoting upward and downward arm rotation. The movable arm can also have an arm length adjustable by use of an articulating arm system.

In some embodiments the movable arm is movable from a first folded position to and extended position.

In one embodiment, at least foldable one leg can be connected to the mechanical support system. In other embodiments, wall or floor mount units can be used to hold the mechanical support system.

In some embodiments the display module provides video and a three-dimensional camera system can be directed to monitor user position. Such systems allow interactive graphics based at least in part on data provided through a three-dimensional camera.

In other embodiments, a force applied through the force-controlled component is based at least in part on detected user input. The force applied through the force-controlled component can also be based at least in part on real time analysis of at least one of user position, user applied force, and user biometric signals.

In one embodiment, the interactive exercise system includes a biometric signal analysis module able to detect at least one of heart rate and breath rate and based on the biometric signal modify force applied through the force-controlled component.

In one embodiment, the interactive exercise system includes an exercise catalog module to allow selection of specific exercises. These exercises can be developed by expert trainers, other users, or created by a user. In some embodiments the exercises can be provided via a personal exercise history module able to store exercise history, including at least one of three-dimensional user pose, video of user, and skeletal extraction data.

In one embodiment an audio module is configured to allow at least one of user voice control, receipt of audio instructions by a user, and music.

In one embodiment, a method for displaying an exercise program on a display module having a mirror element at least partially covering the display module is described. At least one sensor can be used to sense an image of the user. At least one force feedback controlled movable arm can be used to gather user related force data and at least one sensor used to gather biometric data associated with the user (including but not limited to force sensor data from the movable arm). User related force data, biometric data, and image of the user can be analyzed, and training feedback based on the analysis provided to the user or other returned to permit adjustment of the exercise program.

In one embodiment the image used in the described method embodiment includes at least one of still image data and video data. The method can use information from multiple sensor systems, including at least one from a sensor is selected from the group consisting of a stereo camera, a structured light camera, an infrared camera, and a 2D camera.

In one embodiment the biometric data includes a heart rate of the user. In another embodiment, biometric data can be used to calculate or estimate energy burned by the user. Analyzing the biometric data and the image of the user can occur in real time.

In one embodiment skeletal data can be extracted from the image of the user, allowing presentations to the user that can improve posture or exercise position.

In another embodiment a method for providing force controlled responses to a user of an interactive exercise system, includes the steps of gathering, from a force-controlled motor and force sensor connected to the mechanical support system, user related force data. Force can be applied from the at least one force-controlled motor based at least in part on real time analysis of at least one of user position, user applied force, and user biometric signals.

BRIEF DESCRIPTION OF THE DRAWINGS

Non-limiting and non-exhaustive embodiments of the present disclosure are described with reference to the following figures, wherein like reference numerals refer to like parts throughout the various figures unless otherwise specified.

FIG. 1 illustrates an interactive exercise machine system;

FIGS. 2A-G illustrate various extended arm and folded views of an interactive exercise machine with legs;

FIG. 2H illustrates a wall mounted interactive exercise machine;

FIG. 2I illustrates a floor mounted interactive exercise machine;

FIG. 3 illustrates in cross section mirror and touch screen positioning with respect to a display;

FIGS. 4A-E illustrate force resistant reel assemblies and arm component parts;

FIG. 5 illustrates positioning of various sensor systems on the interactive exercise machine;

FIGS. 6A-B illustrates floating views with an augmented reality overlay;

FIG. 7 illustrates data handling and analytics for the interactive exercise machine;

FIG. 8 illustrates use in conjunction with a workout script;

FIG. 9 illustrates operation with real-time live feedback; and

FIG. 10A-B illustrates representative user interface displays; and

FIG. 11 illustrates one embodiment of system architecture.

DETAILED DESCRIPTION

For best results and to reduce chance of muscle damage, many exercises require correct performance of complex actions by the user during an exercise routine and skilled adjustment of weights or force resistance. Novice or casual users often do not have the knowledge or ability to correctly practice an exercise routine or make changes to the exercise machine configuration. Unfortunately, many users cannot afford to pay for personal trainers familiar with the exercise machine or membership in exercise facilities with skilled monitoring personnel. FIG. 1 is an illustration of one embodiment of an interactive exercise machine system 100 with personalized training capabilities being used by a user 101. The system 100 includes an exercise machine display 102 held by a mechanical support system 104. The display 102 can be at least partially covered with a semi-reflective coating or mirror that reflects an image 103 of the user 101, while still allowing viewing of videos 105 or information 107 presented by the display 102.

Movable arms 106 and legs 108 are attached to the mechanical support system 104. User engageable components such as graspable handles 110 are connected to force sensor 114 with monitored cords extending through the movable arms 106. This arrangement allows for providing an actively adjustable, force sensor monitored, variable resistant force, to a user 101 engaged in exercise. One or more cameras 112 can be used to monitor user position, with user position data being usable to allow for adjustment of graspable handle 110 usage force. In some embodiments, a range of environmental or other sensors 116 can be available, including audio sensors, microphones, ambient light level sensors, geo-positioning system (GNSS/GPS) data, accelerometer data, yaw, pitch and roll data, chemical sensor data (e.g. carbon monoxide levels), humidity, and temperature data. In one embodiment, wireless connection can be made to sensor equipped external exercise equipment, including a pressure sensor mat 124 or accelerometer/gyroscope/force sensor equipped weights, balls, bars, tubes, balance systems, stationary or moveable or other exercise devices 126.

In operation, user position and force sensor data be locally stored or provided (via connected network cloud 120) to a remote data storage and analytics service 122. A network cloud 120 can include, but is not limited to servers, desktop computers, laptops, tablets, or smart phones. Remote server embodiments may also be implemented in cloud computing environments. Cloud computing may be defined as a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned via virtualization and released with minimal management effort or service provider interaction, and then scaled accordingly. A cloud model can allow for on-demand self-service, broad network access, resource pooling, rapid elasticity, measured service or various service models (e.g., Software as a Service (“SaaS”), Platform as a Service (“PaaS”), Infrastructure as a Service (“IaaS”), and deployment models (e.g., private cloud, community cloud, public cloud, hybrid cloud, etc.).

Based on user requirements, stored, cached, streamed or live video can be received by exercise machine display 102. In some embodiments, augmented reality graphics can be superimposed on the user image 103 to provide guidance for improving user position as monitored by the cameras and other sensors 112. In other embodiments, force sensor information can be used to provide real-time or near real-time adjustments to resistant force profiles, workout routines, or training schedules.

In the illustrated embodiment of FIG. 1, the display includes an LCD television display. Alternatively, in other embodiments the display can be an OLED display or a projected display. The display can be sized to approximately match size of a user, while in other embodiments it can be sized to range anywhere from 0.5× to 2× user size. Typically, the display 102 is positioned to be slightly higher than a user and extends downward to a floor. A partially silvered mirror can be adhesively attached or positioned in overlaying proximity to the display 102. The amount of mirror reflection is set to allow simultaneous viewing of the user 101 image and information provided by display 102. The display can present information related to a user, including exercise machine usage information, training videos, current or historical exercise related data, interactive simulated or live person video for training or encouragement, entertainment videos, social network related information or communications, or advertisements.

The cameras 112 can include a plurality of video cameras to provide multiple video feeds of the exercise machine environment and user. Cameras can be mounted on the front, side, top, arms, or legs of the exercise machine. In an alternative embodiment, one or more cameras 112 can be mounted separately from the exercise machine to provide a more complete view of the user, including top, side, and behind views of the user. In some embodiments, cameras can be grouped into clusters, with multiple cameras pointed to provide separated and slightly overlapping fields of view. The three-dimensional cameras can provide absolute or relative distance measurements with respect to user position. In some embodiments three-dimensional cameras can include stereo cameras or cameras used in conjunction with structured lighting. In some embodiments, infrared, UV, or hyperspectral cameras systems can be also used. Cameras can provide video frame data at a rate ranging from 1 frames per second to as much as 240 frames per second. In one embodiment, the display is configured to display a real time video and audio feed to the user. In other embodiments, cameras can be used for biometric purposes, including detecting heart or breathing rates, determining body temperature, or monitoring other bodily functions.

In other embodiments, user position or distance measurements to a user can be made, alone or in combination, with a scanning lidar system, an imaging lidar system, a radar system, a monocular system with supported distance determination, and an ultrasonic sensing system. The lidar system can include multiple scanning lasers and suitable time-of-flight measurement systems to provide relative or absolute distance and instantaneous user position information.

In some configurations, the exercise machine display 102 is capable of combining virtual and augmented reality methods with real-time video and/or audio and with real-time user position or force data. This permits, for example, providing three dimensional (3D) augmented reality with dynamics virtual pointers, text, or other indicators to allow a user to better interact with the exercise machine or connected friends or exercise class members, while still providing real-time information such as instantaneous or average force applied for each exercise, heart rate, or breathing/respiratory rate.

As will be understood, interactive exercise machine system 100 can include connections to either a wired or wireless connect subsystem for interaction with devices such as servers, desktop computers, laptops, tablets, smart phones, or sensor equipped exercise equipment. Data and control signals can be received, generated, or transported between varieties of external data sources, including wireless networks, personal area networks, cellular networks, the Internet, or cloud mediated data sources. In addition, sources of local data (e.g. a hard drive, solid state drive, flash memory, or any other suitable memory, including dynamic memory, such as SRAM or DRAM) that can allow for local data storage of user-specified preferences or protocols. In one particular embodiment, multiple communication systems can be provided. For example, a direct Wi-Fi connection (802.11b/g/n) can be used as well as a separate 4G cellular connection.

FIGS. 2A-H illustrate various views of multiple interactive exercise machine embodiments. FIG. 2A shows an interactive exercise machine 200 in perspective, with arms and legs extended. FIG. 2B shows an interactive exercise machine 200 in front view, with arms and legs extended. FIG. 2C shows an interactive exercise machine 200 in side view, with arms and legs extended. FIG. 2D shows an interactive exercise machine 200 in rear view, with arms and legs extended. FIG. 2E shows an interactive exercise machine 200 in front view, with arms folded and legs extended. FIG. 2F shows an interactive exercise machine 200 in side view, with arms folded and legs extended. FIG. 2G shows an interactive exercise machine 200 in rear view, with arms folded and legs extended.

Similar to that described with respect to FIG. 1, the interactive exercise machine 200 includes an exercise machine display 202 held by a mechanical support system 204. The display 202 can be at least partially covered with a semi-reflective coating or mirror that reflects an image of a user (not shown), while still allowing viewing of videos or information presented by the display 202.

The mechanical support system 204 is supported by legs 208 attached via a leg hinge assembly 240 that allows fixed attachment or folding of the legs for easy storage. Movable arms 206 are attached to the mechanical support system 204. Graspable handles 210 are connected to force sensor 214 monitored cords extending through the movable arms 206. The arms 206 are attached to a multi-axis arm hinge assembly 230 that permits pivoting, vertical plane rotation of the arms 206, as well lateral rotation about a hinge attached to the mechanical support system 204. The arms 206 can be independently positioned and locked into place. This arrangement allows for providing a wide variety of actively adjustable, force sensor monitored, variable resistant force exercises to a user.

FIG. 2H shows an alternative embodiment of interactive exercise machine 200H with mechanical support system 204H in perspective view, with arms folded, legs omitted, and configured for wall mounting using a wall support unit 252H. The wall support unit 252H can be temporarily or permanently bolted to a wall (not shown). The mechanical support system 204H can be locked, bolted, or otherwise attached to the wall support unit 252H.

FIG. 2I shows an alternative embodiment of interactive exercise machine 200I in perspective view, with arms folded, legs omitted, and configured for floor mounting using bolt attachment. The floor mounting unit 254I can be temporarily or permanently bolted to a floor using bolts 256I. The mechanical support system 204I can be locked, bolted, or otherwise attached to the floor mounting unit 254H.

FIG. 3 illustrates in cross section mirror and touch screen positioning with respect to a display (not to scale). A seen in FIG. 3 a housing 302 surrounds a display 304 and an electronics module 306 that controls operation of the display 304. Also shown are a touchscreen 310 having a partially silvered mirror 312 attached, with the combination being mounted to housing 302 with a small included air gap 320. In some embodiments the air gap 320 is filled with an optically transparent adhesive that directly attaches the touch screen to the display 304. In other embodiments, the touchscreen can be entirely omitted, and the mirror 310 can be formed as a coating on the display 304 or separated provided on a glass or other substrate. In FIG. 3, the display 304 is shown as extending from near the top of the housing 302 partially downwards to the floor. In other embodiments, the display can fully extend to the floor. In still other embodiment, the display does not extend to the top of the housing 302 but ends several centimeters away from the housing top. Similarly, the mirror 310 can be coextensive with the display, cover a portion near the top of the display, near the bottom of the display, or in between the top and bottom of the display. In some embodiments, tiled or multiple displays can be used.

FIG. 4A illustrates a force resistant reel assembly 400A that can be adapted for use in an interactive exercise machine system 100 or 200 such as discussed with respect to FIGS. 1 and 2A-I. The force resistant reel assembly can include a motor 402A connected to a reel 404A for winding a cord 406A. Redirection of the cord and force sensing is provided by a sensor/pulley assembly 408A. The cord can be surrounded and protected by a movable arm 410A and attached to graspable handle 412A. The sensor/pulley assembly 408A provides redirect at a 1:1 mechanical advantage, but multiple pulleys can be used to provide greater or lesser mechanical advantage, or additional cord redirection if needed.

In operation, the sensor/pulley assembly 408A provides instantaneous force data to allow for immediate control of applied force by motor 402A. Applied force can be continuously varied, or in certain embodiments applied stepwise. In some embodiments, if the degree of applied user force is great enough to cause potential movement or tip-over of an interactive exercise machine system 100 or 200, the motor 402A and reel 404A can allow the cord to run free, lowering the possibility of tip-over. In some embodiments, optional cord braking systems, tensioners, or sensors can be used. Force, cord distance, acceleration, torque or twist sensors can also be used in various embodiments. Advantageously, force control can be modified using scripted control inputs or dynamic force adjustments based on three-dimensional user position and/or kinematic user motion models. This allows for fine control of force applied during complex exercise routines, for improved training or high intensity weightlifting.

FIG. 4B illustrates in more detail a force resistant reel assembly 400B such as described with respect to FIG. 4A. The force resistant reel assembly can include a force controllable motor 402B that is belt drive connected to a reel 404B for winding/unwinding a cord 406B. In some embodiments a V-groove belt, multi-v-groove belt, or other techniques can be used to reduce or eliminate mechanical cogging or variation in applied force. Redirection of the cord and force sensing is provided by a sensor/pulley assembly 408B that includes a force sensor 420B. The cord 406B can be surrounded and protected by a movable arm 410B and attached to graspable handle 412B. Various features allow for adjustment of arm position, including multi-axis arm hinge assembly 430B with a shoulder height adjustment mechanism 432B and a rotational arm mechanism 434B for pivoting upward and downward arm rotation. Arm length can be adjusted by use of an articulating arm system with position change buttons 436B. A rotating arm terminus 438B allows for free rotation of the arm end.

FIG. 4C illustrates a backside of an exercise machine 400C showing in more detail mounting of a pair of force resistant reel assemblies 404C similar to those described with respect to FIGS. 4A and 4B. The force resistant reel assemblies are located near the base of the exercise machine 400C. Redirection of a cord 407C and force sensing is provided by a sensor/pulley assembly 408C. In one embodiment, multiple or redundant force sensors can be used to reduce instances of operational failure or provide higher accuracy force sensing. Further redirection of the cord is provided using multi-axis arm hinge assembly 430C connected to a movable arm with graspable handle (not shown).

FIG. 4D illustrates in more detail a rotational arm mechanism 434D similar to that described with respect to FIG. 4B. The rotational arm mechanism 434B includes a rotating arm base 452D attachable to a fixed inner ring plate 454D having multiple positioning teeth 456D. A motor driven release mechanism 458D controlled by a height control electronic board 460D is capable of rotating and locking an arm 406D into a desired position. Optionally, a manually actuated release mechanism can be used.

FIG. 4D illustrates in more detail a multi-axis arm hinge assembly 430F similar to that described with respect to FIGS. 4B and 4D. A stowed position view and an example position 1 are indicated. As can be seen, the rotational arm mechanism 434B is slidably attached to a hinge plate mechanism 432B. When in a stowed position with the display inactivated, the arms are not readily visible from a front of the interactive exercise machine and the mirrored front appears to be a conventional mirror.

FIG. 5 illustrates positioning of various sensor systems on the interactive exercise machine system 500. An exercise machine 502 includes on-board sensors and can be connected (wired or wireless) to remote sensors. Sensors can include, but are not limited to, center mounted three-dimensional camera 510A, side mounted three-dimensional camera 510B, acoustic sensors such as microphone 512, an environmental condition monitor 514 (which can include humidity, temperature, ambient light, etc.), and force or position sensors 516 (which can include one-, two, or three-axis accelerometers, gyroscopes, or GPS/GNSS systems). The display 504 can be touch or pressure sensitive. Remote cameras 520 can be used, and the system can also support speakers 516 for audio instructions or feedback.

FIG. 6A illustrates an exercise machine system showing a floating view 600A with an augmented reality overlay 602A. A user 601A (stick figure) can have their image reflected by a partially silvered mirror covering the display such as previously discussed with respect to FIGS. 1 and 3. The backing display can provide continuously updated textual, graphical, or video information that is positioned on the screen based at least in part on user position. For example, textual information 604A can be placed above the user's image. In some embodiments, target positions 614A for arm/hand position can be illustrated, and arrows 612A direct the user to adopt a proper exercise position. Similarly arrows 610A can indicate to a user the need to widen stance, which can also be textually indicated, provided by audio directions, and/or provided by video directions. In some embodiments, audio instructions can be provided. In other embodiments wirelessly connected haptic signaling devices can be used, with vibration frequency or haptic intensity used to provide user feedback.

FIG. 6B illustrates displays 600B for an exercise machine system. Shown are a floating view with two alternative screen displays 602B and 603C of an augmented reality overlay. A cartoon rendering, stick figure, or rudimentary skeletal representation of a user can be displayed. Screen display 602B provides primarily visual feedback, with target positions for hands, wrist, elbows, or other bodily features being indicated. In screen display 602B, correct positioning of a hand or other body part is indicated by a light colored circle, while darker circles indicate incorrect positioning. This provides visual feedback to a user, who can move until light colored circles shown for the indicated body parts. Alternatively, as indicated with screen display 603B, text can be used to direct a user to, for example, adjust elbows to a lower position. Similarly, directional arrows can indicate to a user the need to lower elbows. As will be appreciated, other graphic elements than circles can be used, including but not limited to other graphic indicia, highlight, or bright or dark regions. In some embodiments graphic elements can include a graphical overlay on a reflection of a user, graphic overlay on video of user, animations, or graphical overlays on trainer video. Both static or motion graphics can be used. Visual feedback may also include additional windowed video clips, inserted video clips into trainer video showing a trainer providing specific feedback, and audio overlays or instructions.

FIG. 7 illustrates data handling and analytics for the interactive exercise machine system 700. An exercise machine 702 can be supported by a range of data processing functions 710. These can include sensor data processing 712, video and visualizations playback and creation 714, script support module 720 for providing fixed or dynamically modifiable exercise scripts to support force profiles of exercises or exercise routines, and machine intelligence to support kinematic modelling/visualization and improve exercise efficacy using immediate user data, historical user data, and group or other social data.

FIG. 8 illustrates use of system 800 in conjunction with a workout script that allows for individualized exercise routines that can be dynamically modified. A workout script 802 is provided. Based on sensor and other data collected 804, along with script-based data analysis 806, live feedback or adjustments to force profiles or exercise routine parameters (step 808) can be made. Historical data 810 is captured directly from sensors 804 or live feedback systems 808. This data can be used for live or offline machine learning supported user feedback, efficacy evaluation, and modification of routines and routine parameters 812.

FIG. 9 illustrates use of a system 900 with scripted user training 902 supported by real-time live feedback. Three-dimensional user position data is captured (step 904) and a kinematic model (step 906) created. Using one or both of heuristic rules (step 908) or trained machine learning systems (step 910), live feedback (step 912) is provided to the user. Historical data (step 914) is captured, evaluated using machine learning systems (step 916), and the results used to modify the exercise script.

FIGS. 10A and 10B illustrates representative user interface displays. FIG. 10A illustrates a mirrored presentation of a user's face, with machine learned data, trainer selection options, and use data such as social networking-based leaderboards and challenges also being presented. Leaderboards can be live from people doing a workout session at the same time, or dynamically generated based on combination of user data and data from other user data. Other use data can be global or selected based on geography, user data, social network data, group, demographic data, or other groupings. FIG. 10B illustrates a personal profile, workout history with targets to encourage and push user exercise numbers, adaptive program selection, and real-time data. With the exception of the mirrored user face presentation, the illustrated data of FIGS. 10A-B can also be available for viewing on desktop computers, laptops, tablets or smartphones. In some embodiments, this data and can also be supplied in audio form. Selection of option can be through touchscreen, gestures, typed input, wired and wireless input devices or verbal instructions.

FIG. 11 illustrates one embodiment of system architecture 1100. The system 1100 includes local processing system 1110 and a cloud based system 1120. The local processing system 1110 primarily handles sensor and data input, user interface (UI) including exercise machine control functions, selected display module functions, and activity logging. The local processing system 1110 can run on processing hardware including a real-time operating system 1130. A station controller is connected to the real-time operating system 1130 firmware and can handle some input/output functions such as force profile control or repetition calculations.

Functional software modules within the local processing system 1110 handle mirror system operations, including pose estimation and biometric monitors such as heart rate. User interface modules can include screen displays, audio (via headphone or speaker), music service providers such as Spotify, video render services, and voice, touchscreen, or smartphone app mediated command input. Other local processing hardware can also be used. For example, computation heavy tasks such pose estimation 1132 can be processed external to the mirror system, by other processing hardware associated with the exercise machine, or proxy connected local servers. Desktop machines, laptops, or smartphones that have available processing capacity.

Communications to the cloud based system 1120 can be real-time, pseudo-real-time, or non-real-time. Communication can be mediated by HTTP, HTTPS, HLS RTP, RTSP, as well as or MQTT (Message Queuing Telemetry Transport) running on conventional WiFi, Ethernet, or 4G or 5G mobile phone based communication protocols. HTTPS can be provided through a REST client and various proxies. MQTT is publish-subscribe-based messaging protocol that works on top of the TCP/IP protocol and is designed for connections with remote locations where network bandwidth is limited. Transported data can include repetition information from the station controller, UI data from the mirror system, and any other history or logging data that could be useful for cloud based analytics. MQTT data can be transferred real-time, pseudo-real-time, or non-real-time to a Big Query database 1140 via a cloud publish/subscribe interface 1142 with data analytics results being fed back to a user or interactive exercise machine

The cloud based system 1120 can be accessed through a cloud API that allows access to functional modules including a user profile, workout plan, assessments, music services such as Spotify, and assets. Assets can include stored videos or information materials, access to real time trainers, or social network connectivity to other exercise machines. High bandwidth video streaming can be transported to the local processing system 1110 using video cloud compression and transmission services such as Zencoder 1146 and Fastly CDN 1148. Other connected services can include mobile app support 1144, user web portals, relational databases based on Postgres SQL, or content management systems (CMS) for publishing content on the World Wide Web or intranets CMS systems. In one embodiment, various social networking features including social data interchange can be provided by a social network module 1150. For example, download of exercise workout video scripts can be automatically downloaded based on number of active users

In some embodiments, the combination of local processing system 1110 and a cloud based system 1120 can be used for a wide variety of monitoring and exercise related analysis, including those based on visible light, infrared, hyperspectral, or other available camera still or video image sensing techniques. Multiple or three dimensional camera systems can be also be used. In some embodiments, ultrasonic sensors or millimeter radar systems can be used for monitoring a user. Similarly, audio systems including one or more microphones can be used to monitor breathing or other acoustically detectable properties. This data can be locally processed to remove extraneous data and transferred to the cloud based system 1120 for additional processing and long term storage.

Analysis can be both real time and non-realtime. Realtime analysis by local processing system 1110 can involve use of locally available CPU/VPU/GPU/Neural Net accelerator/FPGA/or other programmable logic. Conventional signal or video process techniques can be used, as well as machine intelligence or neural network based processing. In some embodiments, sensor fusion techniques that combine multiple sets of sensor data can be used. This allows, for example, accurate determination of breathing rate based on both audio input and visually determined chest rise and fall. Such detected biometric or other exercise related data can be used to provide realtime feedback to a user, be made available to others, or stored for later use or review by a user or others.

Example local processing functionality can include, but is not limited to, skeletal extraction data processing, or heuristic analysis of skeletal data on per exercise or per repeated motion basis. Other examples include detection of heart rate using video or still image data, detection of breathing rate or breathing depth, or detection of energy burned by body region using video or still image data. In some embodiments, this detected biometric data can be immediately provided in realtime to a user, or optionally be made available for later inspection in non-realtime.

Similarly, realtime or non-realtime analysis by cloud based system 1120 can run on a wide variety of hardware (e.g. CPU/VPU/GPU/Neural Net accelerator/FPGA/programmable logic) and on dedicated or virtual systems. Because of the additional available processing power, more complex and accurate skeletal extraction data processing, or heuristic analysis of skeletal data on per exercise or per repeated motion basis can be made, with realtime or non-realtime feedback being provided to a user.

Non-realtime analysis by cloud based system 1120 is particularly useful for video analysis of user exercise routines, and for creating training feedback. In some embodiments, analysis can be realtime or pseudo realtime. In one embodiment, training feedback can be based primarily on 3D camera data. The data can be compared to ideal or common bodily form appropriate for a selected exercise and live feedback, post workout feedback, or reminder feedback (e.g. before next exercise or next workout) provided to a user. In some embodiments, analysis can be semi-autonomous or manual, with skilled human reviewers acting to analyze video or other exercise related data. Video can be stored, compared with earlier videos, or made permanently or temporarily available for review by trainers.

Long term exercise efficacy analysis of strength, heart rate, ongoing exercise repetitions, or needed breaks in exercise can be made by the cloud based system 1120. Similarly, long term exercise optimization analysis can be made, including suggestions for needed exercises, concentration on selected muscle groups, and number, timing, and force of repetitions for selected exercises. Ordering and changes to selected exercises can also be made. In some embodiments, changes to exercise workouts can be made to workout flows, particular exercises, recommended trainers, background music, real-time interactive scripts, advisories, or communication. In some embodiments, changes to recommended exercises can be based on long term user efficacy of related exercises. In some embodiments, a user can “compete with themselves”, using early exercises as a goal to match. This is particularly useful, for example, when trying to match heart rate, breathing rate, effective weight moved, or speed in exercises completed before an injury or a period of non-use of the interactive exercise machine.

Social engagement between fellow users or interested followers can be an important for encouraging continued and effective use of the described exercise machine. Social user interaction has become an expected utility in the social landscape of many users and is expected to provide nearly instantaneous feedback. Since user friendly and highly available access is desirable, in one embodiment the described exercise machine system can provide data and facilities that support social engagement. Social media can include, but is not limited to private, public, or semi-public access. Social media can include social media sites, social networks, blogs, microblogs, or direct messaging. Data transfer to social media sites from an exercise machine can be automatic, or at the direction of a user. Text messages, videos, or audio clips can be provided.

In addition to meeting user expectations for social media engagement, access to reliable data from multiple users enables companies to improve customer service by facilitating analysis of exercise efficacy or other exercise related data. This data can be stripped of identifying information when user participants wish to remain anonymous when giving their input to a particular data request. Data anonymity can be available to encourage participant engagement and increase an ability to obtain accurate and realistic feedback from the individuals who choose to engage. Secure transmission of information (e.g. via HTTPS) and encrypted storage can be used to create a secure environment for dissemination and use of social engagement data.

Other social engagement related opportunities for the described exercise machine can be based on gamification. Gamification refers to an engagement technique that is based on the strategies used to make game popular but applied to day-to-day chores such as exercise. Gamification can include competition with family, friends, or other users to increase exercise quality or time, or promote behavior that supports winning or exchange of game points. In some embodiments, game points can be used for redemption of rewards and promotion of exercise related brands, including fitness equipment or dietary plans or supplements.

Various types of individual and social engagement can be used. For example, workout summaries on use of an exercise machine can be automatically sent by email, by instant message notification, by transmission to a social media app. Such workout summaries can be sent immediately after workout, or as weekly, monthly, quarterly, or yearly. Summaries can compare a user against their personal workout history. Alternatively, using social engagement data, a user can be compared against various other social classes or groupings, including friends, relevant age group, users having similar fitness level, or users having a fitness level within a goal range of the user.

In other embodiments, social engagements can include users being compared to other users who have accepted public or private challenges. In some embodiments, group challenges (e.g. workers at the same company, school, or within a geographic or political locale) can be supported. Charitable or fundraising challenges can also be supported.

Social engagement can include real-time video or audio connections during workouts. For example, streaming video engagement with a trainer, a friend, multiple friends, or virtual classes can be used to encourage completion of exercises and share efforts. Videos of all participants can be shown, or video focus can switch between talking participants as needed.

Social engagement data can be used to improve exercise recommendations for users. User correlation analysis for exercises likely to be useful for users having similar exercise capability and experience can be made. In other embodiments, analysis of exercise engagement can include determination of likely abandoned workouts by demographic, age, or location, with such exercise routines being removed from presentation to a user. Social engagement data is not limited to simple repetitions or exercise routine timing but can also include more complex analysis based on multiple users such as energy expended, expected heart rate, or expected range of motion.

In the foregoing description, reference is made to the accompanying drawings that form a part thereof, and in which is shown by way of illustration specific exemplary embodiments in which the disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the concepts disclosed herein, and it is to be understood that modifications to the various disclosed embodiments may be made, and other embodiments may be utilized, without departing from the scope of the present disclosure. The foregoing detailed description is, therefore, not to be taken in a limiting sense.

Reference throughout this specification to “one embodiment,” “an embodiment,” “one example,” or “an example” means that a particular feature, structure, or characteristic described in connection with the embodiment or example is included in at least one embodiment of the present disclosure. Thus, appearances of the phrases “in one embodiment,” “in an embodiment,” “one example,” or “an example” in various places throughout this specification are not necessarily all referring to the same embodiment or example. Furthermore, the particular features, structures, databases, or characteristics may be combined in any suitable combinations and/or sub-combinations in one or more embodiments or examples. In addition, it should be appreciated that the figures provided herewith are for explanation purposes to persons ordinarily skilled in the art and that the drawings are not necessarily drawn to scale.

Embodiments in accordance with the present disclosure may be embodied as an apparatus, method, or computer program product. Accordingly, the present disclosure may take the form of an entirely hardware-comprised embodiment, an entirely software-comprised embodiment (including firmware, resident software, micro-code, etc.), or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module,” or “system.” Furthermore, embodiments of the present disclosure may take the form of a computer program product embodied in any tangible medium of expression having computer-usable program code embodied in the medium.

Any combination of one or more computer-usable or computer-readable media may be utilized. For example, a computer-readable medium may include one or more of a portable computer diskette, a hard disk, a random access memory (RAM) device, a read-only memory (ROM) device, an erasable programmable read-only memory (EPROM or Flash memory) device, a portable compact disc read-only memory (CDROM), an optical storage device, and a magnetic storage device. Computer program code for carrying out operations of the present disclosure may be written in any combination of one or more programming languages. Such code may be compiled from source code to computer-readable assembly language or machine code suitable for the device or computer on which the code will be executed.

Embodiments may also be implemented in cloud computing environments. In this description and the following claims, “cloud computing” may be defined as a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned via virtualization and released with minimal management effort or service provider interaction and then scaled accordingly. A cloud model can be composed of various characteristics (e.g., on-demand self-service, broad network access, resource pooling, rapid elasticity, and measured service), service models (e.g., Software as a Service (“SaaS”), Platform as a Service (“PaaS”), and Infrastructure as a Service (“IaaS”)), and deployment models (e.g., private cloud, community cloud, public cloud, and hybrid cloud).

The flow diagrams and block diagrams in the attached figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flow diagrams or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It will also be noted that each block of the block diagrams and/or flow diagrams, and combinations of blocks in the block diagrams and/or flow diagrams, may be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions. These computer program instructions may also be stored in a computer-readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable medium produce an article of manufacture including instruction means which implement the function/act specified in the flow diagram and/or block diagram block or blocks. Many modifications and other embodiments of the invention will come to the mind of one skilled in the art having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is understood that the invention is not to be limited to the specific embodiments disclosed, and that modifications and embodiments are intended to be included within the scope of the appended claims. It is also understood that other embodiments of this invention may be practiced in the absence of an element/step not specifically disclosed herein. 

The invention claimed is:
 1. An interactive exercise system comprising; an exercise machine having a display able to present videos, a three-dimensional camera system, and local processing system able to provide pose estimation based on data from the three-dimensional camera system; wherein one or both of (a) the local processing system and (b) a cloud processing system in data communication with the local processing system is programmed to: generate a kinematic model of a user represented in the data from the three-dimensional camera system; process the kinematic model using a model constructed by one of a machine learning or heuristic method to obtain results; and provide live feedback on the display according to the results; wherein the exercise machine includes a mechanical support system; a display module held by the mechanical support system; a mirror element attached to at least partially cover the display module; and at least one movable arm connected to the mechanical support system that includes at least one force-controlled component engageable by a user.
 2. The interactive exercise system of claim 1, wherein streaming video from the cloud processing system is provided to the display of the exercise machine.
 3. The interactive exercise system of claim 1, wherein at least one of the local processing system and the cloud processing system is connected to provide exercise related data to a mobile app.
 4. The interactive exercise system of claim 1, wherein the local processing system is able to provide exercise repetition data.
 5. The interactive exercise system of claim 1, wherein the local processing system is able to provide biometric signal analysis to detect at least one of heart rate and breath rate.
 6. The interactive exercise system of claim 1, wherein the local processing system is able to provide real time analysis of at least one of user position, user applied force, and user biometric signals.
 7. An interactive exercise system comprising; an exercise machine having a display able to present videos, a three-dimensional camera system, and local processing system able to provide pose estimation based on data from the three-dimensional camera system; wherein one or both of (a) the local processing system and (b) a cloud processing system in data communication with the local processing system is programmed to: generate a kinematic model of a user represented in the data from the three-dimensional camera system; process the kinematic model using a model constructed by one of a machine learning or heuristic method to obtain results ; and provide live feedback on the display according to the results; wherein the exercise machine includes: a mechanical support system; a force-controlled motor attached to the mechanical support system; a reel driven by the force-controlled motor; a handle graspable by a user and including a cord extending between the reel and the handle, wherein force applied through the force-controlled motor is based at least in part on detected user force input.
 8. An interactive exercise system comprising; a cloud processing system supporting exercise related analytics including those based on pose estimation; and a communication module for connection to a local processing system associated with an exercise machine having a display able to present videos, a three-dimensional camera system, and local processing system able to provide data from the three-dimensional camera system; wherein the cloud processing system is programmed to: generate a kinematic model of a user represented in the data from the three-dimensional camera system; process the kinematic model using a model constructed by one of a machine learning or heuristic method to obtain results; and provide live feedback on the display according to the results; wherein the exercise machine includes a mechanical support system; a display module held by the mechanical support system; a mirror element attached to at least partially cover the display module; and at least one movable arm connected to the mechanical support system that includes at least one force-controlled component engageable by a user.
 9. The interactive exercise system of claim 8, wherein streaming video from the cloud processing system is provided to the display of the exercise machine.
 10. The interactive exercise system of claim 8, wherein at least one of the local processing system and the cloud processing system is connected to provide exercise related data to a mobile app.
 11. The interactive exercise system of claim 8, wherein the local processing system is able to provide exercise repetition data.
 12. The interactive exercise system of claim 8, wherein the local processing system is able to provide biometric signal analysis to detect at least one of heart rate and breath rate.
 13. The interactive exercise system of claim 8, wherein the local processing system is able to provide real time analysis of at least one of user position, user applied force, and user biometric signals.
 14. The interactive exercise system of claim 8, wherein the exercise machine includes a mechanical support system; a display module held by the mechanical support system; a mirror element attached to at least partially cover the display module; and at least one movable arm connected to the mechanical support system that includes at least one force-controlled component engageable by a user.
 15. An interactive exercise system comprising; a cloud processing system supporting exercise related analytics including those based on pose estimation; and a communication module for connection to a local processing system associated with an exercise machine having a display able to present videos, a three-dimensional camera system, and local processing system able to provide data from the three-dimensional camera system; wherein the cloud processing system is programmed to: generate a kinematic model of a user represented in the data from the three-dimensional camera system; process the kinematic model using a model constructed by one of a machine learning or heuristic method to obtain results; and provide live feedback on the display according to the results wherein the exercise machine includes a mechanical support system; a force-controlled motor attached to the mechanical support system; a reel driven by the force-controlled motor; and a handle graspable by a user and including a cord extending between the reel and the handle, wherein force applied through the force-controlled motor is based at least in part on detected user force input. 